package com.sunny.fetch.pojo;

import javax.persistence.*;

@Table(name = "f_fx_obasic")
public class FFxObasic {
    @Id
    private Long tid;

    /**
     * 外汇代码
     */
    @Column(name = "ts_code")
    private String tsCode;

    /**
     * 名称
     */
    private String name;

    /**
     * 分类
     */
    private String classify;

    /**
     * 交易商
     */
    private String exchange;

    /**
     * 最小交易单位
     */
    @Column(name = "min_unit")
    private Float minUnit;

    /**
     * 最大交易单位
     */
    @Column(name = "max_unit")
    private Float maxUnit;

    /**
     * 最大交易单位
     */
    private Float pip;

    /**
     * 点值
     */
    @Column(name = "pip_cost")
    private Float pipCost;

    /**
     * 目标差价
     */
    @Column(name = "traget_spread")
    private Float tragetSpread;

    /**
     * 最小止损距离（点子）
     */
    @Column(name = "min_stop_distance")
    private Float minStopDistance;

    /**
     * 交易时间
     */
    @Column(name = "trading_hours")
    private String tradingHours;

    /**
     * 休市时间
     */
    @Column(name = "break_time")
    private String breakTime;

    public FFxObasic(Long tid, String tsCode, String name, String classify, String exchange, Float minUnit, Float maxUnit, Float pip, Float pipCost, Float tragetSpread, Float minStopDistance, String tradingHours, String breakTime) {
        this.tid = tid;
        this.tsCode = tsCode;
        this.name = name;
        this.classify = classify;
        this.exchange = exchange;
        this.minUnit = minUnit;
        this.maxUnit = maxUnit;
        this.pip = pip;
        this.pipCost = pipCost;
        this.tragetSpread = tragetSpread;
        this.minStopDistance = minStopDistance;
        this.tradingHours = tradingHours;
        this.breakTime = breakTime;
    }

    public FFxObasic() {
        super();
    }

    /**
     * @return tid
     */
    public Long getTid() {
        return tid;
    }

    /**
     * @param tid
     */
    public void setTid(Long tid) {
        this.tid = tid;
    }

    /**
     * 获取外汇代码
     *
     * @return ts_code - 外汇代码
     */
    public String getTsCode() {
        return tsCode;
    }

    /**
     * 设置外汇代码
     *
     * @param tsCode 外汇代码
     */
    public void setTsCode(String tsCode) {
        this.tsCode = tsCode;
    }

    /**
     * 获取名称
     *
     * @return name - 名称
     */
    public String getName() {
        return name;
    }

    /**
     * 设置名称
     *
     * @param name 名称
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 获取分类
     *
     * @return classify - 分类
     */
    public String getClassify() {
        return classify;
    }

    /**
     * 设置分类
     *
     * @param classify 分类
     */
    public void setClassify(String classify) {
        this.classify = classify;
    }

    /**
     * 获取交易商
     *
     * @return exchange - 交易商
     */
    public String getExchange() {
        return exchange;
    }

    /**
     * 设置交易商
     *
     * @param exchange 交易商
     */
    public void setExchange(String exchange) {
        this.exchange = exchange;
    }

    /**
     * 获取最小交易单位
     *
     * @return min_unit - 最小交易单位
     */
    public Float getMinUnit() {
        return minUnit;
    }

    /**
     * 设置最小交易单位
     *
     * @param minUnit 最小交易单位
     */
    public void setMinUnit(Float minUnit) {
        this.minUnit = minUnit;
    }

    /**
     * 获取最大交易单位
     *
     * @return max_unit - 最大交易单位
     */
    public Float getMaxUnit() {
        return maxUnit;
    }

    /**
     * 设置最大交易单位
     *
     * @param maxUnit 最大交易单位
     */
    public void setMaxUnit(Float maxUnit) {
        this.maxUnit = maxUnit;
    }

    /**
     * 获取最大交易单位
     *
     * @return pip - 最大交易单位
     */
    public Float getPip() {
        return pip;
    }

    /**
     * 设置最大交易单位
     *
     * @param pip 最大交易单位
     */
    public void setPip(Float pip) {
        this.pip = pip;
    }

    /**
     * 获取点值
     *
     * @return pip_cost - 点值
     */
    public Float getPipCost() {
        return pipCost;
    }

    /**
     * 设置点值
     *
     * @param pipCost 点值
     */
    public void setPipCost(Float pipCost) {
        this.pipCost = pipCost;
    }

    /**
     * 获取目标差价
     *
     * @return traget_spread - 目标差价
     */
    public Float getTragetSpread() {
        return tragetSpread;
    }

    /**
     * 设置目标差价
     *
     * @param tragetSpread 目标差价
     */
    public void setTragetSpread(Float tragetSpread) {
        this.tragetSpread = tragetSpread;
    }

    /**
     * 获取最小止损距离（点子）
     *
     * @return min_stop_distance - 最小止损距离（点子）
     */
    public Float getMinStopDistance() {
        return minStopDistance;
    }

    /**
     * 设置最小止损距离（点子）
     *
     * @param minStopDistance 最小止损距离（点子）
     */
    public void setMinStopDistance(Float minStopDistance) {
        this.minStopDistance = minStopDistance;
    }

    /**
     * 获取交易时间
     *
     * @return trading_hours - 交易时间
     */
    public String getTradingHours() {
        return tradingHours;
    }

    /**
     * 设置交易时间
     *
     * @param tradingHours 交易时间
     */
    public void setTradingHours(String tradingHours) {
        this.tradingHours = tradingHours;
    }

    /**
     * 获取休市时间
     *
     * @return break_time - 休市时间
     */
    public String getBreakTime() {
        return breakTime;
    }

    /**
     * 设置休市时间
     *
     * @param breakTime 休市时间
     */
    public void setBreakTime(String breakTime) {
        this.breakTime = breakTime;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", tid=").append(tid);
        sb.append(", tsCode=").append(tsCode);
        sb.append(", name=").append(name);
        sb.append(", classify=").append(classify);
        sb.append(", exchange=").append(exchange);
        sb.append(", minUnit=").append(minUnit);
        sb.append(", maxUnit=").append(maxUnit);
        sb.append(", pip=").append(pip);
        sb.append(", pipCost=").append(pipCost);
        sb.append(", tragetSpread=").append(tragetSpread);
        sb.append(", minStopDistance=").append(minStopDistance);
        sb.append(", tradingHours=").append(tradingHours);
        sb.append(", breakTime=").append(breakTime);
        sb.append("]");
        return sb.toString();
    }
}